The hardware solutions currently proposed on the market for a particle explosion effect are based on dedicated chips that perform fixed functions at a fixed resolution. This approach requires that all effects be programmed in the chip which includes only a limited set of attributes that can be applied by the user. Drawbacks to such an approach include:
1) Coding and validating every transformation of the effect in the chip is a lengthy process, so typically only a small set of parameters is provided. As a result, the editor has limited creative freedom.
2) To keep the cost of DVE (Digital Video Effects) products as low as possible, manufacturers often use simplified algorithms to minimize the complexity of their chips. Quality is therefore compromised.
3) Particle shapes are simple and hard coded. Users have no possibility of defining their own shapes.
The traditional software solutions for particle explosion effects give the user many parameters to change the behavior of the particles. However, the shapes are quite simple (triangles, squares, etc.) and the user does not have the ability to modify them. Furthermore, the CPU computations required are too important to perform such effect in real time.
The current approach to using 3D graphics technology for video effects is based on rendering. A combination of an effects algorithm, CPU power, and graphics acceleration, processes the video as quickly as possible, yet this approach does not produce a real time Particle Explosion engine. The processing might be slower than real time and is therefore not reliable for streaming video at exactly 60 fields/sec (50 fields/sec in PAL).
The main problems of all the previous approaches are:
1) No possibility for the users to define their own particle shapes;
2) Lack of flexibility in the effect parameters;
3) Fully programmable effect does not run in real time.